<template>
	<view class="detail">
		<!-- 文章的标题 -->
		<view class="title">
			{{options.biaoti}}
		</view>
		<!-- 页眉 -->
		<view class="info">
			<!-- 作者 -->
			<view class="author">
				编辑：{{options.faburen}}
			</view>
			<!-- 时间 -->
			<view class="time">
				发布日期：{{options.addtime}}
			</view>

		</view>
		<!-- 主体内容 -->
		<view class="content">
			<!-- 使用富文本标签，将html代码解析出来 -->
			<rich-text :nodes="options.neirong"></rich-text>
		</view>
		<!-- 版权声明 -->
		<view class="desc">
			免责声明：本站的内容全部均采集腾讯新闻，如果侵权请联系管理员（645732139@qq.com）进行整改删除，本站进行了内容采集不代表本站及其作者的观点，若有
			侵犯请及时联系管理员，感谢您的支持！
		</view>
	</view>
</template>

<script>
	// 导入转换时间戳的模块
	import {
		parseTime
	} from '../../utils/tool.js'

	export default {
		data() {
			return {
				options: null,
				newsId: null,
				detail: {}
			};
		},
		// 这样就可以随时拿到这个对象
		onLoad(e) {
			this.newsId = e.newsId;
			console.log(this.newsId,"this.newsId")
			 this.getDetail(this.newsId);
			 this.countPlusOne(Number(this.newsId));
		},
		methods: {
			// 浏览数量加1
			countPlusOne(newsId) {
				uni.request({
					url: '/dev-api/system/news/clickOne',
					data: {newsId: Number(newsId)},
					method: "put",
					header: {
						'Authorization': 'Bearer ' + uni.getStorageSync('Token'),
						'Content-Type': 'application/json;charset=utf-8'
					},
					// 需要传递的参数
					success: res => {
						 console.log("浏览数量+1成功！")
					}
				})
			},
			// 获取新闻详情信息
			getDetail(newsId) {
				uni.request({
					url: '/dev-api/system/news/getInfo/'+newsId,
					// data: newsId,
					method: "get",
					header: {
						'Authorization': 'Bearer ' + uni.getStorageSync('Token'),
						'Content-Type': 'application/json;charset=utf-8'
					},
					// 需要传递的参数
					success: res => {
						 console.log(res,"gege")
						// 将时间戳转换成年月日时分秒格式
						// res.data.posttime = parseTime(res.data.posttime)
						// // 正则表达式：用于适配微信小程序的图片大小内容
						// res.data.content = res.data.content.replace(/<img/gi, '<img style="max-width:100%"')
						// this.detail = res.data
						// // 切换导航条的显示内容
						// uni.setNavigationBarTitle({
						// 	title: this.detail.title
						// })
						this.options = res.data.data;
						// 调用缓存
						this.saveHistory()
						
					}
				})
			},
			// 缓存机制，用于保存浏览记录
			saveHistory() {
				// 判断里面有没有数据：有数据就追加没有数据就用空数组替代
				let historyArr = uni.getStorageSync("historyArr") || []

				// 将浏览的信息保存到item对象里面，方便缓存读取使用
				console.log(this.options,"this.options999")
				let item = {
					newsId: this.options.newsId,
					fengmian: this.options.fengmian,
					biaoti: this.options.biaoti,
					// 浏览的时间
					looktime: parseTime(Date.now())
				}

				// 拿到每一个的索引值
				let index = historyArr.findIndex(i => {
					return i.newsId == this.options.newsId
				})

				// 判断索引值 如果有相同的索引值就追加新的缓存，删除原来保留的缓存
				if (index >= 0) {
					historyArr.splice(index, 1)
				}

				// 追加数组
				historyArr.unshift(item)
				// 最多保存10条缓存记录
				historyArr = historyArr.splice(0, 10)
				uni.setStorageSync("historyArr", historyArr)
			}
		}
	}
</script>

<style lang="scss">
	.detail {
		padding: 30rpx;

		.title {
			font-size: 50rpx;
			color: #333;
		}

		.info {
			background: #f6f6f6;
			padding: 20rpx 10rpx;
			font-size: 20rpx;
			color: #999;
			display: flex;
			justify-content: space-between;
			margin: 30rpx 0;
		}

		.content {
			padding-bottom: 50rpx;

			/deep/ img {
				width: 100%;

			}
		}

		// 声明
		.desc {
			background: #fef0f0;
			font-size: 26rpx;
			color: #f89898;
			padding: 20rpx;
			line-height: 1.8em;
		}
	}
</style>